package com.etalk.crm.dao;

import com.etalk.crm.pojo.LessonVoidReason;
import com.etalk.crm.pojo.Lessons;
import com.etalk.crm.pojo.NewMainBean;
import com.etalk.crm.pojo.PersonFeedback;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Auther: James
 * @Date: 2018/12/28 16:21
 * @Description:
 */
@Mapper
public interface SSCNewMainMapper {

    /*
     * @Author James
     * @Description SSC 教材将学完列表
     * @Date 9:50 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> selectMaterialFinishedBySSC(@Param("sscId") int sscId);


    /*
     * @Author James
     * @Description  新学员oc课程跟踪
     * @Date 9:53 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> selectOcNewStudent(@Param("sscId") int sscId);


    /*
     * @Author James
     * @Description 学生旷课或者取消上课记录(首页未正常完成课程学员面板)
     * @Date 10:59 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> selectLessonState(@Param("sscId") int sscId);

    /*
     * @Author James
     * @Description 学生超过多少天没有约课的记录(首页未约课记录面板)
     * @Date 10:59 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> selectInactiveLessons(@Param("sscId") int sscId);


    /*
     * @Author James
     * @Description 老师投诉学员列表
     * @Date 16:49 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> selectTeacherRank(@Param("sscId") int sscId);

    /**
     * 查询该ssc下面离职老师对应的学生列表
     *
     * @param sscId sscId
     * @return
     */
    List<NewMainBean> selectLeaveTeacherStu(@Param("sscId") int sscId);

    /*
     * @Author James
     * @Description 学员投诉老师 列表
     * @Date 17:10 2018/12/29
     * @Param
     * @return
     **/
    List<NewMainBean> searchFeedbackInfoByPage(@Param("sscId") int sscId);

    /**
     * 学员投诉老师  回复
     *
     * @param feedback
     * @return
     */
    int addFeedbackResultById(PersonFeedback feedback);


    /*
     * @Author James
     * @Description 根据投诉id  查询投诉相关信息
     * @Date 15:44 2019/1/2
     * @Param
     * @return
     **/
    PersonFeedback selectByFeedbackId(@Param("id") String id);


    /*
     * @Author James
     * @Description 老学员跟进
     * @Date 15:15 2019/1/10
     * @Param
     * @return
     **/
    List<NewMainBean> selectOcOldStudent(@Param("sscId") int sscId);


    /*
     * @Author James
     * @Description 老师投诉学员回复 是否存在
     * @Date 18:29 2019/1/11
     * @Param
     * @return
     **/
    int selectCountByLessonId(@Param("lessonId") int lessonId);


    /*
     * @Author James
     * @Description 老师投诉学员回复 插入回复内容
     * @Date 18:32 2019/1/11
     * @Param
     * @return
     **/
    int updateLessonCommentByLessonId(@Param("result") String result, @Param("handler") String handler, @Param("lessonId") int lessonId);

    /**
     * 查询学员投老师那节课的信息
     *
     * @param lessonId
     * @return
     */
    Lessons selectLessonInfoById(@Param("lessonId") int lessonId);


    /*
     * @Author James
     * @Description 查询void原因并查看是否被选中
     * @Date 14:01 2019/1/14
     * @Param
     * @return
     **/
    List<NewMainBean> selectVoidReasonList(@Param("lessonId") Integer lessonId);

    /**
     * 查询void  原因
     *
     * @param lessonId
     * @return
     */
    LessonVoidReason selectByPrimaryKey(Integer lessonId);


    /*
     * @Author James
     * @Description 订单续费
     * @Date 16:40 2019/3/5
     * @Param
     * @return
     **/
    List<NewMainBean> renewOrders(@Param("sscId") int sscId);


    /*
     * @Author James
     * @Description 修改订单续费状态
     * @Date 17:22 2019/3/5
     * @Param
     * @return
     **/
    int updateRenewOrdersfinish(@Param("orderId") String orderId);

    /**
     * 查询该ssc下面上完OC课的学生列表
     *
     * @param sscId sscId
     * @return
     */
    List<NewMainBean> selectOcInfo(@Param("sscId") int sscId);
}
